package cn.zero.org.domain;

import cn.zero.basic.domain.BaseDomain;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.ArrayList;
import java.util.List;

/**
* @Description: TODO
* @Author: Tang
* @Version: 1.0
* @Date:  2022/6/21 16:56  
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Department extends BaseDomain {


   // 部门编号
   private String sn;
   // 部门名称
   private String name;
   // 上级部门路径
   private String dirPath;
   // 状态 1启用，0禁用
   private Integer state;
   // 部门管理员
   private Long manager_id;
   // 上级部门Id
   private Long parent_id;
   //添加管理员对象
   private Employee manager;
   //添加上级部门
   private Department parent;

   // 封装子部门集合字段
   @JsonInclude(JsonInclude.Include.NON_EMPTY) // 当数据不为空的时候才返回
   private List<Department> children = new ArrayList<>();

}
